<?php

/**
 * home actions.
 *
 * @package    cometa
 * @subpackage home
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class registroActions extends sfActions
{
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */
  public function executeIndex(sfWebRequest $request)
  {
      $servicioUbigeo = new ubigeoClass();
      $listaCiudades  = NULL;
      
      if($this->getUser()->hasFlash('sf_registroErrorParametros'))
      {
          $parametrosFlash = $this->getUser()->getFlash('sf_registroErrorParametros');
          $idPais          = $parametrosFlash['pais'];
          $listaCiudades   = $servicioUbigeo->getListaCiudades($idPais);
      }
      
      $this->listaPaises    = $servicioUbigeo->getListaPaises();
      $this->listaCiudades  = $listaCiudades;      
      
  }

  public function executeRegistro(sfWebRequest $request)
  {
            
      
            $nombre     = $request->getParameter('nombre');
            $apellido   = $request->getParameter('apellido');
            $profesion  = $request->getParameter('profesion');
            $pais       = $request->getParameter('pais');
            $ciudad     = $request->getParameter('ciudad');
            $institucon = $request->getParameter('institucion');
            $mail       = $request->getParameter('mail');
            $password   = $request->getParameter('password');


             $arrayPamametros = array(
                 "nombre"         => $nombre,
                 "apellido"       => $apellido,
                 "profesion"      => $profesion,
                 "ciudad"         => $ciudad,
                 "institucion"    => $institucon,
                 "email"          => $mail,
                 "password"       => $password,
                 "pais"           => $pais,

              );
             $servicioUsuario = new userClass();
             $respuesta = $servicioUsuario->inserUser($arrayPamametros);
             if($respuesta["success"])
             {
                 /*Logeo al usuario*/
                 $servicioUsuario->logIn($respuesta['objecto']);
                 /*Aca toca evaluar si tenia un carrito*/
                 /*si tenia un carrito lo mando a la pagina de confirmacion de zona de envio*/

                 $this->getUser()->setFlash('msgSuccess', 'Usuario Registrado Exitosamente');
                 $this->redirect('@registro');
            /*   Lo usare cuando tenga carrito
                if($this->getUser()->hasAttribute('s_carrito'))
                 {
                       $this->getUser()->setFlash('msg', 'Ahora estas listo para comprar');
                       $this->redirect('@carrito_lista');
                 }
             */
             }
             else
             {
                 $this->getUser()->setFlash('msg', $respuesta['mensaje']);
                 $this->getUser()->setFlash('sf_registroErrorParametros', $arrayPamametros);
                 $this->redirect('@registro');
             }
  }
  
  
  
  public function executeLoguear_usuario(sfWebRequest $request)
  {
    /*obtengo la referencia de la pagina donde e trabajado*/
    $referencia_pagina=$request->getReferer();

    $mail=$request->getParameter('txt-user');
    $password=$request->getParameter('txt-password');
    $tipo=1;

    $servicio_usuario= new userClass();



    /*este metodo sirve tanto para un usuario normal como para si se logea x facebbok*/
        $respuesta=$servicio_usuario->verificacion_general($tipo, null, $password, $mail);

    /*debo enviar mensaje si no esta registrado de lo contraio logearlo*/
    if($respuesta["success"])
    {
        $this->getUser()->setFlash('mensaje',"Registro exitoso");
        /*aca se debe implementar que si se logea y tiene carrito */
        /*entonces llevarle al checkout del carrito*/

            /*verifico si existe*/
            if($referencia_pagina!=''){
            $this->redirect($referencia_pagina);
            }else{
            $this->redirect('home/index');
            }


    }else
    {
        $this->getUser()->setFlash('mensaje',$respuesta["mensaje"]);
            /*verifico si existe*/
            if($referencia_pagina!=''){
            $this->redirect($referencia_pagina);
            }else{
            $this->redirect('home/index');
            }
    }
  }

  public function executeSalir(sfWebRequest $request)
  {
          /*obtengo la referencia de la pagina donde e trabajado*/
          $referencia_pagina=$request->getReferer();

          $servicio_usuario= new userClass();
          $servicio_usuario->logOut();

          if($referencia_pagina!='')
            { $this->redirect($referencia_pagina); }
          else
            { $this->redirect('home/index'); }
          
  }

}
